Skip to content

Add ci-operator config for SNO day2-worker 4.18 CI lane#79357

Draft
rdiscala wants to merge 1 commit into
openshift:mainfrom
rdiscala:TELCOV10N-1089-add-4.18-sno-day2-worker
Draft

Add ci-operator config for SNO day2-worker 4.18 CI lane#79357
rdiscala wants to merge 1 commit into
openshift:mainfrom
rdiscala:TELCOV10N-1089-add-4.18-sno-day2-worker

Conversation

@rdiscala
Copy link
Copy Markdown
Contributor

@rdiscala rdiscala commented May 15, 2026

Adapts the existing 4.20 sno-day2-worker variant to OpenShift 4.18, using the same infrastructure (kni-qe-106 hub, kni-qe-107 spoke) with 4.18-compatible operator channels (ACM release-2.13, MCE stable-2.8, TALM fbc-4-18, cluster-logging stable-6.1).

This PR adds a new ci-operator variant for the openshift-kni/eco-ci-cd component to run the Single Node OpenShift (SNO) day2-worker CI lane against OpenShift 4.18: cnf-ran-sno-day2-worker-4.18. The change lives in openshift/release CI config and does the following:

  • Adds ci-operator config (ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml) that:

    • Targets OCP nightly 4.18 (releases.latest.candidate).
    • Reuses the existing hub/spoke infrastructure (kni-qe-106 hub, kni-qe-107 spoke).
    • Declares shared resource defaults (memory limits 4Gi; requests cpu 100m, memory 200Mi).
    • Configures a cnf-ran-ztp-tests job with environment (disconnected=true, mirror registry, job name, VERSION=4.18), ZTP repo/branches, lists of hub and spoke operator subscriptions (ACM release-2.13, MCE stable-2.8, TALM fbc-4-18, cluster-logging stable-6.1, etc.), and reporting/metrics settings.
    • Wires pre/post/test steps to existing telcov10n step-registry jobs for deploy, mirror, tests and reporting.
  • Updates the telcov10n hub-deploy step script (ci-operator/step-registry/telcov10n/functional/cnf-ran/hub-deploy/telcov10n-functional-cnf-ran-hub-deploy-commands.sh) to set ANSIBLE_JINJA2_NATIVE=true when running the ansible-playbook for deploy-ocp-sno (affects Jinja2 template evaluation during SNO deployment).

In practical terms this enables running the SNO day2-worker CI lane for eco-ci-cd against OpenShift 4.18 using the same hardware and operator channel selections as the existing 4.20 variant, plus a script tweak to use native Jinja2 behavior for the SNO deploy playbook.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 15, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 15, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 4e504ada-9804-44e7-9a38-579a9d90afcf

📥 Commits

Reviewing files that changed from the base of the PR and between 6983a25 and d0fa40e.

⛔ Files ignored due to path filters (1)
  • ci-operator/jobs/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main-periodics.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (2)
  • ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml
  • ci-operator/step-registry/telcov10n/functional/cnf-ran/hub-deploy/telcov10n-functional-cnf-ran-hub-deploy-commands.sh
🚧 Files skipped from review as they are similar to previous changes (1)
  • ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml

Walkthrough

Adds a CI-operator config for the cnf-ran-sno-day2-worker-4.18 variant (build root, OCP 4.18 candidate, global resources, cnf-ran-ztp-tests with env/subscriptions, phase wiring, metadata) and sets ANSIBLE_JINJA2_NATIVE=true for the hub deploy playbook invocation.

Changes

CI Configuration Variant

Layer / File(s) Summary
Build root and release configuration
ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml
Configures the build root image stream tag eco-ci-cd from telcov10n-ci and sets OCP nightly 4.18 as the latest candidate.
Global resource constraints
ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml
Defines shared resource requests/limits for components (100m CPU request, 200Mi memory request, 4Gi memory limit).
Test definition and phase wiring
ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml
Adds cnf-ran-ztp-tests with cron, environment variables (cluster identity, repos/branches, disconnected/mirror registry, metrics lists), hub/spoke subscription payloads, and wires pre, post, and test job refs.
Generated metadata
ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml
Adds zz_generated_metadata fields (branch, org, repo, variant).

Hub Deploy

Layer / File(s) Summary
Ansible deploy invocation flag
ci-operator/step-registry/telcov10n/functional/cnf-ran/hub-deploy/telcov10n-functional-cnf-ran-hub-deploy-commands.sh
Sets ANSIBLE_JINJA2_NATIVE=true in the environment when running ansible-playbook ./playbooks/deploy-ocp-sno.yml.

Estimated Code Review Effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels: rehearsals-ack

Suggested reviewers:

  • TimurMP
  • eifrach
🚥 Pre-merge checks | ✅ 12
✅ Passed checks (12 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding a ci-operator configuration for the SNO day2-worker 4.18 CI lane, which matches the primary purpose of the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The PR does not contain any Ginkgo test definitions. The changes are limited to a new CI-operator configuration YAML file and a bash deployment script, neither of which define test names.
Test Structure And Quality ✅ Passed Custom check is not applicable. PR contains CI-operator YAML configs and shell scripts, not Ginkgo test code. The check cannot assess quality of non-existent tests.
Microshift Test Compatibility ✅ Passed No Ginkgo e2e tests added. PR contains only CI config YAML and a shell script modification. Check is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests are added. PR only adds CI-operator YAML configuration and updates a shell script. The check applies only to new Ginkgo test code.
Topology-Aware Scheduling Compatibility ✅ Passed PR adds CI-operator config for SNO day2-worker 4.18 testing. No deployment manifests, operator code, or scheduling constraints introduced.
Ote Binary Stdout Contract ✅ Passed PR adds YAML CI configuration and modifies Bash deployment script. OTE Binary Stdout Contract check only applies to Go test code, which this PR does not contain.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No new Ginkgo e2e tests are added in this PR. Changes are a YAML config file and a shell script modification, not test code.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 15, 2026
@rdiscala
Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 15, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml`:
- Line 23: The cron entry "0 0 31 2 *" in the file
openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml is unschedulable
(February has no 31st); replace that cron expression with a valid schedule
(e.g., a valid February date like "0 0 28 2 *" or an alternative monthly
schedule) so the periodic lane actually runs, then follow the CI config workflow
by editing the file under ci-operator/config/<org>/<repo>/ and running make
update to regenerate downstream Prow job configs.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: f0ce3fdd-ec34-46a8-badb-63682a312fe6

📥 Commits

Reviewing files that changed from the base of the PR and between e7cec76 and 6983a25.

⛔ Files ignored due to path filters (1)
  • ci-operator/jobs/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main-periodics.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (1)
  • ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml

- as: cnf-ran-ztp-tests
capabilities:
- intranet
cron: 0 0 31 2 *
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Cron schedule is unschedulable.

Line 23 uses 0 0 31 2 *, which never triggers (February has no 31st). This effectively disables the periodic lane.

Suggested fix
-  cron: 0 0 31 2 *
+  cron: 0 0 * * *
As per coding guidelines, "For CI configuration, edit files in `ci-operator/config///` and run `make update` to generate downstream Prow job configs".
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
cron: 0 0 31 2 *
cron: 0 0 * * *
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@ci-operator/config/openshift-kni/eco-ci-cd/openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml`
at line 23, The cron entry "0 0 31 2 *" in the file
openshift-kni-eco-ci-cd-main__cnf-ran-sno-day2-worker-4.18.yaml is unschedulable
(February has no 31st); replace that cron expression with a valid schedule
(e.g., a valid February date like "0 0 28 2 *" or an alternative monthly
schedule) so the periodic lane actually runs, then follow the CI config workflow
by editing the file under ci-operator/config/<org>/<repo>/ and running make
update to regenerate downstream Prow job configs.

@rdiscala
Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.18-cnf-ran-ztp-tests

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@rdiscala: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

Adapts the existing 4.20 sno-day2-worker variant to OpenShift 4.18,
using the same infrastructure (kni-qe-106 hub, kni-qe-107 spoke) with
4.18-compatible operator channels (ACM release-2.13, MCE stable-2.8,
TALM fbc-4-18, cluster-logging stable-6.1).
@rdiscala rdiscala force-pushed the TELCOV10N-1089-add-4.18-sno-day2-worker branch from 6983a25 to d0fa40e Compare May 18, 2026 13:12
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 18, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: rdiscala

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@rdiscala: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.22-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.21-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.18-cnf-ran-ztp-tests N/A periodic Periodic changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.21-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.18-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.14-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.20-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.22-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.18-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.16-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-two-sno-4.16-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.20-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.14-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.23-cnf-ran-ztp-tests N/A periodic Registry content changed
periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-standard-4.20-cnf-ran-ztp-tests N/A periodic Registry content changed
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@rdiscala
Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.18-cnf-ran-ztp-tests

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@rdiscala: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 18, 2026

@rdiscala: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.18-cnf-ran-ztp-tests d0fa40e link unknown /pj-rehearse periodic-ci-openshift-kni-eco-ci-cd-main-cnf-ran-sno-day2-worker-4.18-cnf-ran-ztp-tests

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant